#ifndef NOOS_CASEBASEUTILS
#define NOOS_CASEBASEUTILS


/* These functions map from the sort of problems to cases and viceversa: */ 
Sort *get_case_sort(Ontology *o,Sort *problem_sort);
Sort *get_problem_sort(Ontology *o,Sort *case_sort);

/* These functions return the description and solution of cases depending of their sort (if they are sponges, etc.) */ 
FeatureTerm *get_description(FeatureTerm *c);
FeatureTerm *get_solution(FeatureTerm *c);

/* This function builds a case from a problem and a solution: */ 
FeatureTerm *build_case(FeatureTerm *p,FeatureTerm *s,Ontology *o);

bool is_a_problem(FeatureTerm *p);
bool is_a_case(FeatureTerm *p);

bool is_a_problem(Sort *s);
bool is_a_case(Sort *s);


#endif

